<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">

<html><head><title>AuASIO - NewAC</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>

<!--  Generated by Natural Docs, version 1.4 -->
<!--  http://www.naturaldocs.org  -->

<!-- saved from url=(0026)http://www.naturaldocs.org -->




<div id=Content><div class="CSection"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="AuASIO"></a>AuASIO</h1><div class=CBody><p>Components for working with ASIO drivers</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#AuASIO" >AuASIO</a></td><td class=SDescription>Components for working with ASIO drivers</td></tr><tr class="SClass"><td class=SEntry><a href="#TASIOAudioOut" >TASIOAudioOut</a></td><td class=SDescription>Performs audio playback using low latency ASIO drivers. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#TASIOAudioOut.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#TASIOAudioOut.ReleaseASIODriver" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">ReleaseASIODriver</a></td><td class=SDescription>Call this method to release hold on ASIO driver so thst other applications could use audio subsystem. </td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#TASIOAudioOut.Jump" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">Jump</a></td><td class=SDescription>This method, being a wrapper around &lt;Seek&gt;, simpifies navigation in the input stream. </td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#TASIOAudioOut.IsSampleRateSupported" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">IsSampleRateSupported</a></td><td class=SDescription>Returns True if the specified sample rate is supported by the driver and False otherwise. </td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#TASIOAudioOut.ShowSetupDlg" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">ShowSetupDlg</a></td><td class=SDescription>Brings up ASIO properties dialog window.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#TASIOAudioOut.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#TASIOAudioOut.DeviceCount" >DeviceCount</a></td><td class=SDescription>This read only property returns the number of logical ASIO devices.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#TASIOAudioOut.DeviceName" >DeviceName</a></td><td class=SDescription>This read only array property returns the name of the device specified by its number. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#TASIOAudioOut.OutputBPS" >OutputBPS</a></td><td class=SDescription>This read only property returns the number of bits per sample supported by the driver. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#TASIOAudioOut.MaxOutputChannels" >MaxOutputChannels</a></td><td class=SDescription>This read only property returns the maximum number of output channels provided by the driver. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#TASIOAudioOut.Latency" >Latency</a></td><td class=SDescription>Read this property to get the latency value (in samples).</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#TASIOAudioOut.SampleRate" >SampleRate</a></td><td class=SDescription>Use this property to change the ASIO driver sample rate while doing playback. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#TASIOAudioOut.DeviceNumber" >DeviceNumber</a></td><td class=SDescription>Use this property to select the playback device by number. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#TASIOAudioOut.ASIOBufferSize" >ASIOBufferSize</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#TASIOAudioOut.OnPositionChanged" >OnPositionChanged</a></td><td class=SDescription>If assigned this event handler is called every time  the system is about to fetch a new audio data block. </td></tr><tr class="SClass"><td class=SEntry><a href="#TASIOAudioIn" >TASIOAudioIn</a></td><td class=SDescription>Performs audio recording from a sound card using low latency ASIO drivers. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#TASIOAudioIn.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#TASIOAudioIn.HoldOff" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">HoldOff</a></td><td class=SDescription>Pass True to HoldOff if you want to temporarily disable recording. </td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#TASIOAudioIn.IsSampleRateSupported" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">IsSampleRateSupported</a></td><td class=SDescription>Returns True if the specified sample rate is supported by the driver and False otherwise. </td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#TASIOAudioIn.ShowSetupDlg" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">ShowSetupDlg</a></td><td class=SDescription>Brings up ASIO properties dialog window.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#TASIOAudioIn.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#TASIOAudioIn.DeviceCount" >DeviceCount</a></td><td class=SDescription>This read only property returns the number of logical DirectSound input devices.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#TASIOAudioIn.DeviceName[Number:Integer]" >DeviceName[Number : Integer]</a></td><td class=SDescription>This read only array property returns the name of the device specified by its number. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#TASIOAudioIn.MaxOutputChannels" >MaxOutputChannels</a></td><td class=SDescription>This read only property returns the maximum number of output channels provided by the driver. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#TASIOAudioIn.Latency" >Latency</a></td><td class=SDescription>Read this property to get the latency value in samples.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#TASIOAudioIn.InSampleRate" >InSampleRate</a></td><td class=SDescription>Use this property to set the sample rate of the audio stream the component will provide. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#TASIOAudioIn.SamplesToRead" >SamplesToRead</a></td><td class=SDescription>Use this property to set the number of samples (frames) the component should record. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#TASIOAudioIn.DeviceNumber" >DeviceNumber</a></td><td class=SDescription>Use this property to select the recording device by number. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#TASIOAudioIn.InChannels" >InChannels</a></td><td class=SDescription>Use this property to set the number of channels in the audio stream the component will provide. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#TASIOAudioIn.RecTime" >RecTime</a></td><td class=SDescription>Use this property to set the recording duration (in seconds). </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#TASIOAudioIn.ASIOBufferSize" >ASIOBufferSize</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#TASIOAudioIn.EchoRecording" >EchoRecording</a></td><td class=SDescription>If this property is set to True the system plays out the audio data being recorded. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#TASIOAudioIn.OnPositionChanged" >OnPositionChanged</a></td><td class=SDescription>If assigned this event handler is called every time  the ASIO is about to record a new audio data block. </td></tr><tr class="SClass"><td class=SEntry><a href="#TASIOAudioDuplex" >TASIOAudioDuplex</a></td><td class=SDescription>Allows simultaneous recording and playback using ASIO drivers. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#TASIOAudioDuplex.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#TASIOAudioDuplex.HoldOff" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">HoldOff</a></td><td class=SDescription>Pass True to HoldOff if you want to temporarily disable recording. </td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#TASIOAudioDuplex.ShowSetupDlg" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">ShowSetupDlg</a></td><td class=SDescription>Brings up ASIO properties dialog window.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#TASIOAudioDuplex.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#TASIOAudioDuplex.DeviceCount" >DeviceCount</a></td><td class=SDescription>This read only property returns the number of logical DirectSound input devices.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#TASIOAudioDuplex.DeviceName[Number:Integer]" >DeviceName[Number : Integer]</a></td><td class=SDescription>This read only array property returns the name of the device specified by its number. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#TASIOAudioDuplex.Latency" >Latency</a></td><td class=SDescription>Read this property to get the latency value in samples.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#TASIOAudioDuplex.SampleRate" >SampleRate</a></td><td class=SDescription>Read this property to determine what the input data sample rate should be.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#TASIOAudioDuplex.Channels" >Channels</a></td><td class=SDescription>Read this property to get the number of channels for the input data in the audio stream the component will provide. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#TASIOAudioDuplex.BitsPerSample" >BitsPerSample</a></td><td class=SDescription>Read this property to get the sample format for the input data in the audio stream the component will provide. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#TASIOAudioDuplex.DeviceNumber" >DeviceNumber</a></td><td class=SDescription>Use this property to select the recording device by number. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#TASIOAudioDuplex.ASIOBufferSize" >ASIOBufferSize</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#TASIOAudioDuplex.OnPositionChanged" >OnPositionChanged</a></td><td class=SDescription>If assigned this event handler is called every time  the ASIO is about to record a new audio data block. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#TASIOAudioDuplex.EchoRecording" >EchoRecording</a></td><td class=SDescription>If this property is set to True the system mixes input audio data with data being recorded and plays both.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#TASIOAudioDuplex.RecordInput" >RecordInput</a></td><td class=SDescription>If this property is set to True the system mixes input audio data with data being recorded and passes the mix as its output.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>

<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="TASIOAudioOut"></a>TASIOAudioOut</h2><div class=CBody><p>Performs audio playback using low latency ASIO drivers.&nbsp; Descends from <a href="ACS_Classes-pas.html#TAuOutput" class=LClass id=link14 onMouseOver="ShowTip(event, 'tt10', 'link14')" onMouseOut="HideTip('tt10')">TAuOutput</a>.&nbsp; On Windows ASIO drivers bypass some OS layaers which makes them suitable for a real-time audio processing.&nbsp; You will need an ASIO audo driver to use this component.&nbsp; Free ASIO driver that can be installed on top of any WDM (Windows) driver is available at <a href="http://www.asio4all.com" class=LURL target=_top>http://www.asio4all.com</a>.&nbsp; This component also requires openasio.dll which you will find along with other third-party NewAC libraries.&nbsp; One important feature of ASIO drivers is that they offer only a limited choise of sampling rates and sample formats.&nbsp; It is your software that should tune itself up to an ASIO driver and not vice versa.&nbsp; The sample formats currently supported by the NewAC ASIO components are 16/24/32 bps mono/stereo/5.1 surround.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#TASIOAudioOut.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#TASIOAudioOut.ReleaseASIODriver" id=link10 onMouseOver="ShowTip(event, 'tt1', 'link10')" onMouseOut="HideTip('tt1')">ReleaseASIODriver</a></td><td class=SDescription>Call this method to release hold on ASIO driver so thst other applications could use audio subsystem. </td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#TASIOAudioOut.Jump" id=link11 onMouseOver="ShowTip(event, 'tt2', 'link11')" onMouseOut="HideTip('tt2')">Jump</a></td><td class=SDescription>This method, being a wrapper around &lt;Seek&gt;, simpifies navigation in the input stream. </td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#TASIOAudioOut.IsSampleRateSupported" id=link12 onMouseOver="ShowTip(event, 'tt3', 'link12')" onMouseOut="HideTip('tt3')">IsSampleRateSupported</a></td><td class=SDescription>Returns True if the specified sample rate is supported by the driver and False otherwise. </td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#TASIOAudioOut.ShowSetupDlg" id=link13 onMouseOver="ShowTip(event, 'tt4', 'link13')" onMouseOut="HideTip('tt4')">ShowSetupDlg</a></td><td class=SDescription>Brings up ASIO properties dialog window.</td></tr><tr class="SGroup"><td class=SEntry><a href="#TASIOAudioOut.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#TASIOAudioOut.DeviceCount" >DeviceCount</a></td><td class=SDescription>This read only property returns the number of logical ASIO devices.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#TASIOAudioOut.DeviceName" >DeviceName</a></td><td class=SDescription>This read only array property returns the name of the device specified by its number. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#TASIOAudioOut.OutputBPS" >OutputBPS</a></td><td class=SDescription>This read only property returns the number of bits per sample supported by the driver. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#TASIOAudioOut.MaxOutputChannels" >MaxOutputChannels</a></td><td class=SDescription>This read only property returns the maximum number of output channels provided by the driver. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#TASIOAudioOut.Latency" >Latency</a></td><td class=SDescription>Read this property to get the latency value (in samples).</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#TASIOAudioOut.SampleRate" >SampleRate</a></td><td class=SDescription>Use this property to change the ASIO driver sample rate while doing playback. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#TASIOAudioOut.DeviceNumber" >DeviceNumber</a></td><td class=SDescription>Use this property to select the playback device by number. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#TASIOAudioOut.ASIOBufferSize" >ASIOBufferSize</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#TASIOAudioOut.OnPositionChanged" >OnPositionChanged</a></td><td class=SDescription>If assigned this event handler is called every time  the system is about to fetch a new audio data block. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>

<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioOut.Functions"></a>Functions</h3></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioOut.ReleaseASIODriver"></a>ReleaseASIODriver</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>procedure ReleaseASIODriver</td></tr></table></blockquote><p>Call this method to release hold on ASIO driver so thst other applications could use audio subsystem.&nbsp; Driver is released automatically when the audio playback is done.</p></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioOut.Jump"></a>Jump</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>procedure Jump(</td><td class=PParameter nowrap>Offs :</td><td class=PType nowrap>&nbsp;Integer</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>This method, being a wrapper around &lt;Seek&gt;, simpifies navigation in the input stream.&nbsp; Calling Jump moves you backward or forward relative to the current position.&nbsp; Jump may be called either before starting playback (in this case the playback will be started from the position specified) or during the playback.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>Offs</td><td class=CDLDescription>the amount of file contents, in in units of 1/1000 of the content length, that will be skipped.&nbsp; Positive value skips forward, negative value skips backward.&nbsp; For example calling Jump(-1000) always sets the playing position at the beginning of the file and Jump(100) will skip forward to 1/10 of the file.&nbsp; Note: Use &lt;Seek&gt; for more exact positioning.</td></tr></table></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioOut.IsSampleRateSupported"></a>IsSampleRateSupported</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>function IsSampleRateSupported(</td><td class=PParameter nowrap>SR :</td><td class=PType nowrap>&nbsp;Integer</td><td class=PAfterParameters nowrap>) : Boolean</td></tr></table></td></tr></table></blockquote><p>Returns True if the specified sample rate is supported by the driver and False otherwise.&nbsp; Call it before you start any other ASIO operation or the current operation will be aborted.</p></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioOut.ShowSetupDlg"></a>ShowSetupDlg</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>procedure ShowSetupDlg</td></tr></table></blockquote><p>Brings up ASIO properties dialog window.</p></div></div></div>

<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioOut.Properties"></a>Properties</h3></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioOut.DeviceCount"></a>DeviceCount</h3><div class=CBody><p>This read only property returns the number of logical ASIO devices.</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioOut.DeviceName"></a>DeviceName</h3><div class=CBody><p>This read only array property returns the name of the device specified by its number.&nbsp; Valid numbers range from 0 to <a href="#TASIOAudioOut.DeviceCount" class=LProperty id=link15 onMouseOver="ShowTip(event, 'tt11', 'link15')" onMouseOut="HideTip('tt11')">DeviceCount</a> - 1.</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioOut.OutputBPS"></a>OutputBPS</h3><div class=CBody><p>This read only property returns the number of bits per sample supported by the driver.&nbsp; Whatever this value is TASIOAudioOut also supports 16 bps input using internal conversion.</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioOut.MaxOutputChannels"></a>MaxOutputChannels</h3><div class=CBody><p>This read only property returns the maximum number of output channels provided by the driver.&nbsp; You can use input with less channels than this value but not more.&nbsp; ASIO properties setup may change this value (see &lt;ShowSetupDlg&gt;).</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioOut.Latency"></a>Latency</h3><div class=CBody><p>Read this property to get the latency value (in samples).</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioOut.SampleRate"></a>SampleRate</h3><div class=CBody><p>Use this property to change the ASIO driver sample rate while doing playback.&nbsp;  Note however that not all sample rates are supported.&nbsp; If the requested sample rate is not supported, the property&rsquo;s value doesn&rsquo;t change.</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioOut.DeviceNumber"></a>DeviceNumber</h3><div class=CBody><p>Use this property to select the playback device by number.&nbsp; The default value is 0 which corresponds to the default audio output device in your system.&nbsp; Valid numbers range from 0 to <a href="#TASIOAudioOut.DeviceCount" class=LProperty id=link16 onMouseOver="ShowTip(event, 'tt11', 'link16')" onMouseOut="HideTip('tt11')">DeviceCount</a> - 1.</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioOut.ASIOBufferSize"></a>ASIOBufferSize</h3><div class=CBody><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>Use this property to select the ASIO buffer size.&nbsp; Available options are absMinimum</td><td class=CDLDescription>minimum allowed buffer size, absPreferred - preferred buffer size, absMaximum - maximum aloowed buffer size.&nbsp; Larger buffer sizes increase latency.</td></tr></table></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioOut.OnPositionChanged"></a>OnPositionChanged</h3><div class=CBody><p>If assigned this event handler is called every time  the system is about to fetch a new audio data block.&nbsp; The blocks are about 512 audio samlples in size so the operation is almost immediate.&nbsp; The event handler is passed the current sample number and a timestamp from the beginning of playback.&nbsp; Note that unlike most other NewAC events, this event is a real-time one.&nbsp; Performing some lengthy operation in this event handler may cause gaps in playback.</p></div></div></div>

<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="TASIOAudioIn"></a>TASIOAudioIn</h2><div class=CBody><p>Performs audio recording from a sound card using low latency ASIO drivers.&nbsp; Descends from <a href="ACS_Classes-pas.html#TAuInput" class=LClass id=link20 onMouseOver="ShowTip(event, 'tt12', 'link20')" onMouseOut="HideTip('tt12')">TAuInput</a>.&nbsp; On Windows ASIO drivers bypass some OS layaers which makes them suitable for a real-time audio processing.&nbsp; You will need an ASIO audo driver to use this component.&nbsp; Free ASIO driver that can be installed on top of any WDM (Windows) driver is available at <a href="http://www.asio4all.com" class=LURL target=_top>http://www.asio4all.com</a>.&nbsp; This component also requires openasio.dll which you will find along with other third-party NewAC libraries.&nbsp; One important feature of ASIO drivers is that they offer only a limited choise of sampling rates and sample formats.&nbsp; It is your software that should tune itself up to an ASIO driver and not vice versa.&nbsp; The sample formats currently supported by the NewAC ASIO components are 16/32 bps mono/stereo.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#TASIOAudioIn.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#TASIOAudioIn.HoldOff" id=link17 onMouseOver="ShowTip(event, 'tt5', 'link17')" onMouseOut="HideTip('tt5')">HoldOff</a></td><td class=SDescription>Pass True to HoldOff if you want to temporarily disable recording. </td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#TASIOAudioIn.IsSampleRateSupported" id=link18 onMouseOver="ShowTip(event, 'tt6', 'link18')" onMouseOut="HideTip('tt6')">IsSampleRateSupported</a></td><td class=SDescription>Returns True if the specified sample rate is supported by the driver and False otherwise. </td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#TASIOAudioIn.ShowSetupDlg" id=link19 onMouseOver="ShowTip(event, 'tt7', 'link19')" onMouseOut="HideTip('tt7')">ShowSetupDlg</a></td><td class=SDescription>Brings up ASIO properties dialog window.</td></tr><tr class="SGroup"><td class=SEntry><a href="#TASIOAudioIn.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#TASIOAudioIn.DeviceCount" >DeviceCount</a></td><td class=SDescription>This read only property returns the number of logical DirectSound input devices.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#TASIOAudioIn.DeviceName[Number:Integer]" >DeviceName[Number : Integer]</a></td><td class=SDescription>This read only array property returns the name of the device specified by its number. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#TASIOAudioIn.MaxOutputChannels" >MaxOutputChannels</a></td><td class=SDescription>This read only property returns the maximum number of output channels provided by the driver. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#TASIOAudioIn.Latency" >Latency</a></td><td class=SDescription>Read this property to get the latency value in samples.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#TASIOAudioIn.InSampleRate" >InSampleRate</a></td><td class=SDescription>Use this property to set the sample rate of the audio stream the component will provide. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#TASIOAudioIn.SamplesToRead" >SamplesToRead</a></td><td class=SDescription>Use this property to set the number of samples (frames) the component should record. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#TASIOAudioIn.DeviceNumber" >DeviceNumber</a></td><td class=SDescription>Use this property to select the recording device by number. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#TASIOAudioIn.InChannels" >InChannels</a></td><td class=SDescription>Use this property to set the number of channels in the audio stream the component will provide. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#TASIOAudioIn.RecTime" >RecTime</a></td><td class=SDescription>Use this property to set the recording duration (in seconds). </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#TASIOAudioIn.ASIOBufferSize" >ASIOBufferSize</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#TASIOAudioIn.EchoRecording" >EchoRecording</a></td><td class=SDescription>If this property is set to True the system plays out the audio data being recorded. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#TASIOAudioIn.OnPositionChanged" >OnPositionChanged</a></td><td class=SDescription>If assigned this event handler is called every time  the ASIO is about to record a new audio data block. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>

<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioIn.Functions"></a>Functions</h3></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioIn.HoldOff"></a>HoldOff</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>procedure HoldOff(</td><td class=PParameter nowrap>b :</td><td class=PType nowrap>&nbsp;Boolean</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Pass True to HoldOff if you want to temporarily disable recording.&nbsp; The Whole processing chain is bloacked untill you call HoldOff(False).</p></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioIn.IsSampleRateSupported"></a>IsSampleRateSupported</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>function IsSampleRateSupported(</td><td class=PParameter nowrap>SR :</td><td class=PType nowrap>&nbsp;Integer</td><td class=PAfterParameters nowrap>) : Boolean</td></tr></table></td></tr></table></blockquote><p>Returns True if the specified sample rate is supported by the driver and False otherwise.&nbsp; Call it before you start any other ASIO operation or the current operation will be aborted.</p></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioIn.ShowSetupDlg"></a>ShowSetupDlg</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>procedure ShowSetupDlg</td></tr></table></blockquote><p>Brings up ASIO properties dialog window.</p></div></div></div>

<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioIn.Properties"></a>Properties</h3></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioIn.DeviceCount"></a>DeviceCount</h3><div class=CBody><p>This read only property returns the number of logical DirectSound input devices.</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioIn.DeviceName[Number:Integer]"></a>DeviceName[Number : Integer]</h3><div class=CBody><p>This read only array property returns the name of the device specified by its number.&nbsp; Valid numbers range from 0 to <a href="#TASIOAudioIn.DeviceCount" class=LProperty id=link21 onMouseOver="ShowTip(event, 'tt13', 'link21')" onMouseOut="HideTip('tt13')">DeviceCount</a> - 1.</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioIn.MaxOutputChannels"></a>MaxOutputChannels</h3><div class=CBody><p>This read only property returns the maximum number of output channels provided by the driver.&nbsp; You can use input with less channels than this value but not more.&nbsp; ASIO properties setup may change this value (see &lt;ShowSetupDlg&gt;).</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioIn.Latency"></a>Latency</h3><div class=CBody><p>Read this property to get the latency value in samples.</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioIn.InSampleRate"></a>InSampleRate</h3><div class=CBody><p>Use this property to set the sample rate of the audio stream the component will provide.&nbsp; Note that only limited number of sample rates is supported by ASIO (see &lt;IsSampleRateSupported&gt;).</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioIn.SamplesToRead"></a>SamplesToRead</h3><div class=CBody><p>Use this property to set the number of samples (frames) the component should record.&nbsp; If you set this property value to -1 the component will be endlessly recording until you stop it.</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioIn.DeviceNumber"></a>DeviceNumber</h3><div class=CBody><p>Use this property to select the recording device by number.&nbsp; The property default value is 0 which corresponds to the default audio input device in your system.&nbsp; Valid numbers range from 0 to <a href="#TASIOAudioIn.DeviceCount" class=LProperty id=link22 onMouseOver="ShowTip(event, 'tt13', 'link22')" onMouseOut="HideTip('tt13')">DeviceCount</a> - 1.</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioIn.InChannels"></a>InChannels</h3><div class=CBody><p>Use this property to set the number of channels in the audio stream the component will provide.&nbsp; Possible values are 1 (mono), and 2 (stereo).</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioIn.RecTime"></a>RecTime</h3><div class=CBody><p>Use this property to set the recording duration (in seconds).&nbsp; If set this property overrides the value of &lt;BytesToRead&gt;.&nbsp; If you set this property value to -1 (the default) the component will be endlessly recording until you stop it.</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioIn.ASIOBufferSize"></a>ASIOBufferSize</h3><div class=CBody><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>Use this property to select the ASIO buffer size.&nbsp; Available options are absMinimum</td><td class=CDLDescription>minimum allowed buffer size, absPreferred - preferred buffer size, absMaximum - maximum aloowed buffer size.&nbsp; Larger buffer sizes increase latency.</td></tr></table></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioIn.EchoRecording"></a>EchoRecording</h3><div class=CBody><p>If this property is set to True the system plays out the audio data being recorded.&nbsp; Otherwise recording goes mutely.</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioIn.OnPositionChanged"></a>OnPositionChanged</h3><div class=CBody><p>If assigned this event handler is called every time  the ASIO is about to record a new audio data block.&nbsp; The blocks are about 512 audio samlples in size so the operation is almost immediate.&nbsp; The event handler is passed the current sample number and a timestamp from the beginning of playback.&nbsp; Note that unlike most other NewAC events, this event is a real-time one.&nbsp; Performing some lengthy operation in this event handler may cause gaps in playback.&nbsp; You can call the output component&rsquo;s Stop method  from this handler but not pause.&nbsp; Use the <a href="#TASIOAudioIn.HoldOff" class=LFunction id=link23 onMouseOver="ShowTip(event, 'tt5', 'link23')" onMouseOut="HideTip('tt5')">HoldOff</a> method if you want to pause recording from this event handler.</p></div></div></div>

<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="TASIOAudioDuplex"></a>TASIOAudioDuplex</h2><div class=CBody><p>Allows simultaneous recording and playback using ASIO drivers.&nbsp; Descends from <a href="ACS_Classes-pas.html#TAuConverter" class=LClass id=link26 onMouseOver="ShowTip(event, 'tt14', 'link26')" onMouseOut="HideTip('tt14')">TAuConverter</a>.&nbsp; THis component reads its input and plays it vis ASIO output device while recording data from ASIO input device.&nbsp; The recorded data may be mixed with the input.&nbsp; Technically this component is a converter so it sits in the middle of the audio-processing chain like this^</p><p>-&gt; input to be played -&gt; [TASIOAudioDuplex instance (input is played, output is recorded)] -&gt; output (recorded data possibly mixed with the input data) -&gt;</p><p>The number of bits per sample of the input should be the same as the recodrded number of bits per sample (currently either 16 or 32).&nbsp; The sample rates also should be the same.&nbsp; On Windows ASIO drivers bypass some OS layaers which makes them suitable for a real-time audio processing.&nbsp; You will need an ASIO audo driver to use this component.&nbsp; Free ASIO driver that can be installed on top of any WDM (Windows) driver is available at <a href="http://www.asio4all.com" class=LURL target=_top>http://www.asio4all.com</a>.&nbsp; This component also requires openasio.dll which you will find along with other third-party NewAC libraries.&nbsp; One important feature of ASIO drivers is that they offer only a limited choise of sampling rates and sample formats.&nbsp; It is your software that should tune itself up to an ASIO driver and not vice versa.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#TASIOAudioDuplex.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#TASIOAudioDuplex.HoldOff" id=link24 onMouseOver="ShowTip(event, 'tt8', 'link24')" onMouseOut="HideTip('tt8')">HoldOff</a></td><td class=SDescription>Pass True to HoldOff if you want to temporarily disable recording. </td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#TASIOAudioDuplex.ShowSetupDlg" id=link25 onMouseOver="ShowTip(event, 'tt9', 'link25')" onMouseOut="HideTip('tt9')">ShowSetupDlg</a></td><td class=SDescription>Brings up ASIO properties dialog window.</td></tr><tr class="SGroup"><td class=SEntry><a href="#TASIOAudioDuplex.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#TASIOAudioDuplex.DeviceCount" >DeviceCount</a></td><td class=SDescription>This read only property returns the number of logical DirectSound input devices.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#TASIOAudioDuplex.DeviceName[Number:Integer]" >DeviceName[Number : Integer]</a></td><td class=SDescription>This read only array property returns the name of the device specified by its number. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#TASIOAudioDuplex.Latency" >Latency</a></td><td class=SDescription>Read this property to get the latency value in samples.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#TASIOAudioDuplex.SampleRate" >SampleRate</a></td><td class=SDescription>Read this property to determine what the input data sample rate should be.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#TASIOAudioDuplex.Channels" >Channels</a></td><td class=SDescription>Read this property to get the number of channels for the input data in the audio stream the component will provide. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#TASIOAudioDuplex.BitsPerSample" >BitsPerSample</a></td><td class=SDescription>Read this property to get the sample format for the input data in the audio stream the component will provide. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#TASIOAudioDuplex.DeviceNumber" >DeviceNumber</a></td><td class=SDescription>Use this property to select the recording device by number. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#TASIOAudioDuplex.ASIOBufferSize" >ASIOBufferSize</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#TASIOAudioDuplex.OnPositionChanged" >OnPositionChanged</a></td><td class=SDescription>If assigned this event handler is called every time  the ASIO is about to record a new audio data block. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#TASIOAudioDuplex.EchoRecording" >EchoRecording</a></td><td class=SDescription>If this property is set to True the system mixes input audio data with data being recorded and plays both.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#TASIOAudioDuplex.RecordInput" >RecordInput</a></td><td class=SDescription>If this property is set to True the system mixes input audio data with data being recorded and passes the mix as its output.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>

<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioDuplex.Functions"></a>Functions</h3></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioDuplex.HoldOff"></a>HoldOff</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>procedure HoldOff(</td><td class=PParameter nowrap>b :</td><td class=PType nowrap>&nbsp;Boolean</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Pass True to HoldOff if you want to temporarily disable recording.&nbsp; The Whole processing chain is bloacked untill you call HoldOff(False).</p></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioDuplex.ShowSetupDlg"></a>ShowSetupDlg</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>procedure ShowSetupDlg</td></tr></table></blockquote><p>Brings up ASIO properties dialog window.</p></div></div></div>

<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioDuplex.Properties"></a>Properties</h3></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioDuplex.DeviceCount"></a>DeviceCount</h3><div class=CBody><p>This read only property returns the number of logical DirectSound input devices.</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioDuplex.DeviceName[Number:Integer]"></a>DeviceName[Number : Integer]</h3><div class=CBody><p>This read only array property returns the name of the device specified by its number.&nbsp; Valid numbers range from 0 to <a href="#TASIOAudioDuplex.DeviceCount" class=LProperty id=link27 onMouseOver="ShowTip(event, 'tt15', 'link27')" onMouseOut="HideTip('tt15')">DeviceCount</a> - 1.</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioDuplex.Latency"></a>Latency</h3><div class=CBody><p>Read this property to get the latency value in samples.</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioDuplex.SampleRate"></a>SampleRate</h3><div class=CBody><p>Read this property to determine what the input data sample rate should be.</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioDuplex.Channels"></a>Channels</h3><div class=CBody><p>Read this property to get the number of channels for the input data in the audio stream the component will provide.&nbsp; Possible values are 1 (mono), and 2 (stereo).</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioDuplex.BitsPerSample"></a>BitsPerSample</h3><div class=CBody><p>Read this property to get the sample format for the input data in the audio stream the component will provide.&nbsp; Possible values are 32.</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioDuplex.DeviceNumber"></a>DeviceNumber</h3><div class=CBody><p>Use this property to select the recording device by number.&nbsp; The property default value is 0 which corresponds to the default audio input device in your system.&nbsp; Valid numbers range from 0 to <a href="#TASIOAudioDuplex.DeviceCount" class=LProperty id=link28 onMouseOver="ShowTip(event, 'tt15', 'link28')" onMouseOut="HideTip('tt15')">DeviceCount</a> - 1.</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioDuplex.ASIOBufferSize"></a>ASIOBufferSize</h3><div class=CBody><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>Use this property to select the ASIO buffer size.&nbsp; Available options are absMinimum</td><td class=CDLDescription>minimum allowed buffer size, absPreferred - preferred buffer size, absMaximum - maximum aloowed buffer size.&nbsp; Larger buffer sizes increase latency.</td></tr></table></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioDuplex.OnPositionChanged"></a>OnPositionChanged</h3><div class=CBody><p>If assigned this event handler is called every time  the ASIO is about to record a new audio data block.&nbsp; The blocks are about 512 audio samlples in size so the operation is almost immediate.&nbsp; The event handler is passed the current sample number and a timestamp from the beginning of playback.&nbsp; Note that unlike most other NewAC events, this event is a real-time one.&nbsp; Performing some lengthy operation in this event handler may cause gaps in playback.&nbsp; You can call the output component&rsquo;s Stop method  from this handler but not pause.&nbsp; Use the <a href="#TASIOAudioDuplex.HoldOff" class=LFunction id=link29 onMouseOver="ShowTip(event, 'tt8', 'link29')" onMouseOut="HideTip('tt8')">HoldOff</a> method if you want to pause recording from this event handler.</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioDuplex.EchoRecording"></a>EchoRecording</h3><div class=CBody><p>If this property is set to True the system mixes input audio data with data being recorded and plays both.</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TASIOAudioDuplex.RecordInput"></a>RecordInput</h3><div class=CBody><p>If this property is set to True the system mixes input audio data with data being recorded and passes the mix as its output.</p></div></div></div>

</div><!--Content-->


<div id=Footer>Content &copy; 2008-2010 Andrei Borovsky. Design &copy; 2008 Wayne Thursby. <b><u><a href="http://symmetrica.net/newac">Go to the project's main page</a></u></b>&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->


<div id=Menu><div class=MTitle>NewAC<div class=MSubTitle>v2.5</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Documentation</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../doc/txt/introduction-txt.html">Quick Introduction to NewAC</a></div></div><div class=MEntry><div class=MFile><a href="../doc/txt/about_documentation-txt.html">About the Documentation</a></div></div><div class=MEntry><div class=MFile><a href="../doc/txt/cwguide-txt.html">Component Writer&rsquo;s Guide</a></div></div><div class=MEntry><div class=MFile><a href="../doc/txt/license-txt.html">License</a></div></div><div class=MEntry><div class=MFile><a href="../doc/txt/tips_and_tricks-txt.html">Tips &amp; Tricks</a></div></div><div class=MEntry><div class=MFile><a href="../doc/txt/newac-txt.html">About New Audio Components</a></div></div><div class=MEntry><div class=MFile><a href="../doc/txt/features-txt.html">NewAC Main Features List</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Main Units</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="ACS_AudioMix-pas.html">ACS_AudioMix</a></div></div><div class=MEntry><div class=MFile><a href="ACS_CDROM-pas.html">ACS_CDROM</a></div></div><div class=MEntry><div class=MFile><a href="ACS_Classes-pas.html">ACS_Classes</a></div></div><div class=MEntry><div class=MFile><a href="ACS_Converters-pas.html">ACS_Converters</a></div></div><div class=MEntry><div class=MFile><a href="ACS_DXAudio-pas.html">ACS_DXAudio</a></div></div><div class=MEntry><div class=MFile><a href="ACS_FLAC-pas.html">ACS_FLAC</a></div></div><div class=MEntry><div class=MFile><a href="ACS_Filters-pas.html">ACS_Filters</a></div></div><div class=MEntry><div class=MFile><a href="ACS_LAME-pas.html">ACS_LAME</a></div></div><div class=MEntry><div class=MFile><a href="ACS_MAC-pas.html">ACS_MAC</a></div></div><div class=MEntry><div class=MFile><a href="ACS_Misc-pas.html">ACS_Misc</a></div></div><div class=MEntry><div class=MFile><a href="ACS_MPC-pas.html">ACS_MPC</a></div></div><div class=MEntry><div class=MFile><a href="ACS_OptimFROG-pas.html">ACS_OptimFROG</a></div></div><div class=MEntry><div class=MFile><a href="ACS_smpeg-pas.html">ACS_SMPEG</a></div></div><div class=MEntry><div class=MFile><a href="ACS_Streams-pas.html">ACS_Streams</a></div></div><div class=MEntry><div class=MFile><a href="ACS_TTA-pas.html">ACS_TTA</a></div></div><div class=MEntry><div class=MFile><a href="ACS_Tags-pas.html">ACS_Tags</a></div></div><div class=MEntry><div class=MFile><a href="ACS_Vorbis-pas.html">ACS_Vorbis</a></div></div><div class=MEntry><div class=MFile><a href="ACS_WavPack-pas.html">ACS_WavPack</a></div></div><div class=MEntry><div class=MFile><a href="ACS_Wave-pas.html">ACS_Wave</a></div></div><div class=MEntry><div class=MFile><a href="ACS_WinMedia-pas.html">ACS_WinMedia</a></div></div><div class=MEntry><div class=MFile><a href="AudioDMO-pas.html">AudioDMO</a></div></div><div class=MEntry><div class=MFile><a href="AudioPass-pas.html">AudioPass</a></div></div><div class=MEntry><div class=MFile><a href="AuSampleRate-pas.html">AuSampleRate</a></div></div><div class=MEntry><div class=MFile id=MSelected>AuASIO</div></div><div class=MEntry><div class=MFile><a href="AuSynch-pas.html">AuSynch</a></div></div><div class=MEntry><div class=MFile><a href="NewACDTS-pas.html">NewACDTS</a></div></div><div class=MEntry><div class=MFile><a href="NewAC_AVI-pas.html">NewAC_AVI</a></div></div><div class=MEntry><div class=MFile><a href="NewAC_DSP-pas.html">NewAC_DSP</a></div></div><div class=MEntry><div class=MFile><a href="NewACAC3-pas.html">NewACAC3</a></div></div><div class=MEntry><div class=MFile><a href="NewACIndicators-pas.html">NewACIndicators</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Utility Units</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="ACS_Misc-pas.html">ACS_Misc</a></div></div><div class=MEntry><div class=MFile><a href="ACS_Procs-pas.html">ACS_Procs</a></div></div><div class=MEntry><div class=MFile><a href="acs_reg-pas.html">ACS_Reg</a></div></div><div class=MEntry><div class=MFile><a href="ACS_Types-pas.html">ACS_Types</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">Tutorials</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../demos/Tutorial/AudioProcessor/Main-pas.html">Audio Processor</a></div></div><div class=MEntry><div class=MFile><a href="../demos/Tutorial/ComponentsDemo/ComponentsDemo-pas.html">Components Demo</a></div></div><div class=MEntry><div class=MFile><a href="../demos/Recorders-rippers/Rip'n'listen/Main-pas.html">Rip&rsquo;n&rsquo;Listen Demo</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Constants.html">Constants</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Types.html">Types</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Variables.html">Variables</a></div></div></div></div></div><script type="text/javascript"><!--
var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Constants">Constants</option><option value="Functions">Functions</option><option value="Properties">Properties</option><option value="Types">Types</option><option value="Variables">Variables</option></select></div><script language=JavaScript><!--
HideAllBut([2], 6);// --></script></div><!--Menu-->



<!--START_ND_TOOLTIPS-->
<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>procedure ReleaseASIODriver</td></tr></table></blockquote>Call this method to release hold on ASIO driver so thst other applications could use audio subsystem. </div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>procedure Jump(</td><td class=PParameter nowrap>Offs :</td><td class=PType nowrap>&nbsp;Integer</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>This method, being a wrapper around Seek, simpifies navigation in the input stream. </div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>function IsSampleRateSupported(</td><td class=PParameter nowrap>SR :</td><td class=PType nowrap>&nbsp;Integer</td><td class=PAfterParameters nowrap>) : Boolean</td></tr></table></td></tr></table></blockquote>Returns True if the specified sample rate is supported by the driver and False otherwise. </div></div><div class=CToolTip id="tt4"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>procedure ShowSetupDlg</td></tr></table></blockquote>Brings up ASIO properties dialog window.</div></div><div class=CToolTip id="tt5"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>procedure HoldOff(</td><td class=PParameter nowrap>b :</td><td class=PType nowrap>&nbsp;Boolean</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Pass True to HoldOff if you want to temporarily disable recording. </div></div><div class=CToolTip id="tt6"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>function IsSampleRateSupported(</td><td class=PParameter nowrap>SR :</td><td class=PType nowrap>&nbsp;Integer</td><td class=PAfterParameters nowrap>) : Boolean</td></tr></table></td></tr></table></blockquote>Returns True if the specified sample rate is supported by the driver and False otherwise. </div></div><div class=CToolTip id="tt7"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>procedure ShowSetupDlg</td></tr></table></blockquote>Brings up ASIO properties dialog window.</div></div><div class=CToolTip id="tt8"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>procedure HoldOff(</td><td class=PParameter nowrap>b :</td><td class=PType nowrap>&nbsp;Boolean</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Pass True to HoldOff if you want to temporarily disable recording. </div></div><div class=CToolTip id="tt9"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>procedure ShowSetupDlg</td></tr></table></blockquote>Brings up ASIO properties dialog window.</div></div><div class=CToolTip id="tt10"><div class=CClass>The ancestor class for all output components.</div></div><div class=CToolTip id="tt11"><div class=CProperty>This read only property returns the number of logical ASIO devices.</div></div><div class=CToolTip id="tt12"><div class=CClass>The ancestor class for all input components.</div></div><div class=CToolTip id="tt13"><div class=CProperty>This read only property returns the number of logical DirectSound input devices.</div></div><div class=CToolTip id="tt14"><div class=CClass>Descends from TAuInput, the base class for all converter components. </div></div><div class=CToolTip id="tt15"><div class=CProperty>This read only property returns the number of logical DirectSound input devices.</div></div><!--END_ND_TOOLTIPS-->




<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>


<script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>